home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 7 / FM Towns Free Software Collection 7.iso / ms_dos / lcon / bios.doc next >
Text File  |  1993-11-30  |  6KB  |  197 lines

  1. ===========================================
  2.  LCON  Version 0.25  BIOSドキュメント
  3.    filename : BIOS.DOC
  4.  
  5.                1993/09/16  by マシーンM
  6. ===========================================
  7.  
  8. 1. サポートしているBIOS (INT 91H)
  9.  
  10.   function|処理|   備  考
  11.  ---------+----+---------------------------------------------------------------
  12.    00H(0) |  1 |
  13.    01H(1) |  1 |
  14.    02H(2) |  1 |
  15.    03H(3) |  1 |
  16.    04H(4) |  1 |
  17.    05H(5) |  0 |
  18.    06H(6) |  0 |
  19.    07H(7) |  0 |
  20.    08H(8) |  0 |
  21.    09H(9) |  1 |
  22.    0AH(10)|  1 |
  23.    0BH(11)|  1 |
  24.    0CH(12)|  1 |
  25.    0DH(13)|  1 |
  26.    0EH(14)|  1 |
  27.    0FH(15)|  1 |
  28.    10H(16)|  1 |
  29.    11H(17)|  1 |
  30.    12H(18)|  1 |
  31.    13H(19)|  1 |
  32.    14H(20)|  1 |
  33.    15H(21)|  1 |
  34.    16H(22)|  1 |
  35.    17H(23)|  0 |
  36.    18H(24)|  0 |
  37.    19H(25)|  0 |
  38.    1AH(26)|  1 |  縦方向スクロールのみサポートしている。
  39.    1BH(27)|  0 |
  40.    1CH(28)|  0 |
  41.    1DH(29)|  1 |
  42.    1EH(30)|  1 |
  43.    1FH(31)|  0 |
  44.    20H(32)|  0 |
  45.    30H(48)|  1 |  LCON専用拡張ファンクション
  46.  ---------+----+---------------------------------------------------------------
  47.   処理: 0 - LCON登録前のBIOS(INT 91H)を呼び出している。
  48.         1 - LCON内で処理している。
  49.  
  50.  
  51.  
  52. 2. LCON専用拡張ファンクション(INT 91H  function 30H(ah=30h))
  53.  
  54.    (1)  al=00h: テキストVRAMテーブル退避用スタックポインタを初期化
  55.    (2)  al=01h: 現在のテキストVRAMテーブルをスタックへ退避(スタック深さは32)
  56.    (3)  al=02h: 退避しているテキストVRAMテーブルを復帰
  57.    (4)  al=03h: 文字描画を開始する
  58.    (5)  al=04h: 文字描画を禁止する
  59.    (6)  al=05h: 文字を再描画する
  60.    (7)  al=10h: テキストVRAMテーブル1を設定
  61.    (8)  al=11h: テキストVRAMテーブル2を設定
  62.    (9)  al=14h: テキストVRAMテーブル1を設定 + DOS terminate (int 21h ax:4C00)
  63.    (10) al=15h: テキストVRAMテーブル2を設定 + DOS terminate (int 21h ax:4C00)
  64.    (11) al=40h: 拡張画面サイズの取得
  65.            出力 dh = 行数(25,30~44)
  66.                 dl = 桁数(80)
  67.    (12) al=41h: 拡張画面サイズの設定
  68.            入力 dh - 行数(25,30~44)
  69.                 dl - 桁数(80)
  70.    (13) al=50h: CRTCレジスタ値の取得
  71.            入力 bl = レジスタ番号 (00h~1fh:CRTCレジスタ番号)
  72.                                   (20h~21h:ビデオ出力制御部レジスタ00~01)
  73.            出力 dx = レジスタ値
  74.    (14) al=51h: CRTCレジスタ値の設定
  75.            入力 bl - レジスタ番号 (00h~1fh:CRTCレジスタ番号)
  76.                                   (20h~21h:ビデオ出力制御部レジスタ00~01)
  77.                 dx - レジスタ値
  78.    (15) al=80h: コンソール初期化 (画面消去無しの function 00H)
  79.  
  80.        (1)~(15)の帰り値: ah=0     - 正常終了
  81.                           ah=0以外 - LCONが常駐していない
  82.  
  83.  
  84.  
  85. 3. サポートしているオーダ
  86.  
  87.    (1)  00H: なにもしない
  88.    (2)  07H: ベルを一定時間ならす
  89.    (3)  08H: カーソルを左へ移動
  90.    (4)  09H: 次のタブ位置にカーソル移動
  91.    (5)  0AH: カーソルを次の行の同一桁位置に移動
  92.    (6)  0BH: カーソルを1行1桁に移動
  93.    (7)  0CH: テキスト画面消去
  94.    (8)  0DH: カーソルを行頭に移動
  95.    (9)  15H: グラフィック画面消去
  96.    (10) 16H: グラフィック画面+テキスト画面消去
  97.    (11) 1BH: エスケープシーケンス
  98.    (12) 1CH: カーソルを右へ移動
  99.    (13) 1DH: カーソルを左へ移動
  100.    (14) 1EH: カーソルを上へ移動
  101.    (15) 1FH: カーソルを下へ移動
  102.  
  103.  
  104.  
  105. 4. サポートしているエスケープシーケンス
  106.  
  107.    (1)  ESC[Pl;PcH
  108.    (2)  ESC[Pl;Pcf
  109.    (3)  ESC[PnA
  110.    (4)  ESC[PnB
  111.    (5)  ESC[PnC
  112.    (6)  ESC[PnD
  113.    (7)  ESC[6n
  114.    (8)  ESC[Pl;PcR
  115.    (9)  ESC[s
  116.    (10) ESC[u
  117.    (11) ESC[PsJ
  118.    (12) ESC[PsK
  119.    (13) ESC[=Psh
  120.    (14) ESC[=7h
  121.    (15) ESC[?7h
  122.    (16) ESC[=Psl
  123.    (17) ESC[=7l
  124.    (18) ESC[?7l
  125.    (19) ESC[Ps;・・・;Psm
  126.           0 - すべての属性解除
  127.           1 - 高輝度
  128.           5 - ブリンク
  129.           7 - リバース
  130.          30 - 黒色
  131.          31 - 赤色
  132.          32 - 緑色
  133.          33 - 黄色
  134.          34 - 青色
  135.          35 - 紫色
  136.          36 - 水色
  137.          37 - 白色
  138.          40 - 背景色  黒色
  139.          41 - 背景色  赤色
  140.          42 - 背景色  緑色
  141.          43 - 背景色  黄色
  142.          44 - 背景色  青色
  143.          45 - 背景色  紫色
  144.          46 - 背景色  水色
  145.          47 - 背景色  白色
  146.    (20) ESC[Psv
  147.    (21) ESC=row clmn
  148.    (22) ESC*
  149.    (23) ESCY
  150.    (24) ESCT
  151.    (25) ESCE
  152.    (26) ESCR
  153.    (27) ESC?
  154.    (28) ESC.ca1 ca2
  155.    (29) ESCGat
  156.    (30) ESC<グラフィック文字>
  157.    (31) ESC[XX;・・・;XXp         ( キーコード割り当て )
  158.  
  159.  
  160.  
  161. 5. テキストVRAMのメモリマップ
  162.  
  163.  
  164.     (1) 25行のとき TEXT VRAM1,2のアドレス( 漢字VRAMは offset+02000h )
  165.     ---------+-------------------------+--------------------------
  166.           行 | TEXT VRAM 1             | TEXT VRAM 2
  167.     ---------+-------------------------+--------------------------
  168.        1~25 | c800:0000 ~ c800:0f9f  |  f000:0000 ~ f000:0f9f
  169.     ---------+-------------------------+--------------------------
  170.  
  171.  
  172.     (2) 30行のとき TEXT VRAM1,2のアドレス( 漢字VRAMは offset+02000h )
  173.     ---------+-------------------------+--------------------------
  174.           行 | TEXT VRAM 1             | TEXT VRAM 2
  175.     ---------+-------------------------+--------------------------
  176.        1~24 | c800:0000 ~ c800:0eff  |
  177.     ---------+-------------------------+
  178.       25~29 | ff10:0f00 ~ ff10:121f  | f000:0000 ~ f000:12bf
  179.     ---------+-------------------------+
  180.           30 | c800:0f00 ~ c800:0f9f  |
  181.     ---------+-------------------------+--------------------------
  182.  
  183.  
  184.     (3) 32行のとき TEXT VRAM1,2のアドレス( 漢字VRAMは offset+02000h )
  185.     ---------+-------------------------+--------------------------
  186.           行 | TEXT VRAM 1             | TEXT VRAM 2
  187.     ---------+-------------------------+--------------------------
  188.        1~24 | c800:0000 ~ c800:0eff  |
  189.     ---------+-------------------------+
  190.       25~31 | ff10:0f00 ~ ff10:135f  | f000:0000 ~ f000:13ff
  191.     ---------+-------------------------+
  192.           32 | c800:0f00 ~ c800:0f9f  |
  193.     ---------+-------------------------+--------------------------
  194.  
  195.  
  196. (おわり)
  197.